package com.szholly.pro.watergas_server.ps.data;

import java.util.HashMap;

import com.szholly.data.general.metadata.table.DefulatDomainTable;import org.springframework.stereotype.Component;import com.szholly.data.general.Field;import com.szholly.data.general.InterceptorTableBase;import com.szholly.data.general.metadata.IBaseTable;import com.szholly.utils.spring.SpringBeanFactory;import org.springframework.stereotype.Component;import com.szholly.data.general.GlobalDataType;import com.szholly.data.general.RowBase;
/**
 * QcExpdetaildata
 */
@Component("QcExpdetaildata")
public class QcExpdetaildataTable extends InterceptorTableBase  implements IBaseTable{

	public final static String TABLE_NAME = "QC_EXPDETAILDATA";
	
	/**
	 * single ref
	 */
	public static QcExpdetaildataTable getSingleRef() {
		return (QcExpdetaildataTable) SpringBeanFactory.getBean("QcExpdetaildata");
	}

	@Override
	public String getMetadataTableName() {
		return TABLE_NAME;
	}

	@Override
	public String getMetadataTableAliasName() {
		return "QcExpdetaildata";
	}

	private HashMap<String, Field> fields;

	@Override
	protected HashMap<String, Field> fields() {
		if (fields == null) {
			fields = new HashMap<String, Field>();

			Field itemField = null;
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpNumber);
			itemField.setDataType(GlobalDataType.String);
			itemField.setFieldID(5);
			itemField.setFieldAliasName("实验编号");
			itemField.setAllowNull(true);
			itemField.setMaxLen(100);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpSsdMvalueCs);
			itemField.setDataType(GlobalDataType.Double);
			itemField.setFieldID(6);
			itemField.setFieldAliasName("标样测定结果-测定值(有证标样)");
			itemField.setAllowNull(true);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpSsdSvalue);
			itemField.setDataType(GlobalDataType.Double);
			itemField.setFieldID(7);
			itemField.setFieldAliasName("标样测定结果-标样浓度");
			itemField.setAllowNull(true);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpParam);
			itemField.setDataType(GlobalDataType.String);
			itemField.setFieldID(8);
			itemField.setFieldAliasName("实验参数（编码：氨氮 060）");
			itemField.setAllowNull(true);
			itemField.setMaxLen(100);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpSsdSsn);
			itemField.setDataType(GlobalDataType.String);
			itemField.setFieldID(9);
			itemField.setFieldAliasName("标样测定结果-标样号(实验空白样品号)");
			itemField.setAllowNull(true);
			itemField.setMaxLen(100);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_Guid);
			itemField.setDataType(GlobalDataType.String);
			itemField.setFieldID(10);
			itemField.setFieldAliasName("唯一码");
			itemField.setAllowNull(false);
			itemField.setMaxLen(100);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpRd);
			itemField.setDataType(GlobalDataType.Double);
			itemField.setFieldID(11);
			itemField.setFieldAliasName("相对偏差");
			itemField.setAllowNull(true);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpMvalue);
			itemField.setDataType(GlobalDataType.Double);
			itemField.setFieldID(12);
			itemField.setFieldAliasName("测定值（加标回收:回收率,标样测定结果:测定值）");
			itemField.setAllowNull(true);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpMethodcode);
			itemField.setDataType(GlobalDataType.String);
			itemField.setFieldID(13);
			itemField.setFieldAliasName("实验方法编号（所有平行实验和普通实验方法一致）");
			itemField.setAllowNull(true);
			itemField.setMaxLen(100);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpSsdQsCs);
			itemField.setDataType(GlobalDataType.String);
			itemField.setFieldID(14);
			itemField.setFieldAliasName("标样测定结果-合格标准(有证标样)");
			itemField.setAllowNull(true);
			itemField.setMaxLen(100);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_Createtime);
			itemField.setDataType(GlobalDataType.DateTime);
			itemField.setFieldID(15);
			itemField.setFieldAliasName("数据入库时间");
			itemField.setAllowNull(true);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
			itemField = new Field();
			itemField.setFieldName(QcExpdetaildataRow.FIELD_ExpSc);
			itemField.setDataType(GlobalDataType.Double);
			itemField.setFieldID(16);
			itemField.setFieldAliasName("实验样品平均浓度（用于获取到相应数量级的合格标准）");
			itemField.setAllowNull(true);
			fields.put(itemField.getFieldName().toUpperCase().trim(), itemField);
			
		}
		return fields;
	}

	@Override
	public String getTableGroup() {
		return "QcExpdetaildata";
	}
}